Communication nodes, more generally known as computing devices (e.g., servers, network switches, routers, and the like), which are connected either or both of a public and private network commonly are each assigned Internet Protocol (IP) addresses, to both locate and identify the nodes for communications with other nodes on that same network. Under the fourth and primary version of the Internet, known as “IPv4,” the pool of unallocated IP addresses in the IPv4 address family is rapidly diminishing (due, in part, to factors such as poor planning; the ubiquity of Internet-capable devices, such as smartphones; and network expansion into developing countries, such as China and India). IP address depletion in the IPv4 address family has been anticipated since the late 1980s, and a successor protocol, Internet Protocol version 6 or “IPv6,” has been developed and deployed as of 1993, which provides a larger address pool.
IPv4 and IPv6, however, are not designed to be interoperable, complicating the transition to IPv6 from IPv4. Many Internet service providers (ISPs) provide rudimentary solutions, including network address translation or “NAT” services, which generally includes remapping one IP address space into another. NAT services are also a popular method to allow private network address space (such as a business' internal network) to masquerade as one publicly routable IPv4 address at a single location (i.e., one router), instead of allocating a public address to each network device. When IP address information is modified at the packet level, however, the quality of Internet connectivity may suffer. NAT implementations by ISP vary widely and are not commonly documented by vendors of equipment containing the implementations. Many “un-IPv6-aware” NAT implementations often break native communications, as well as have other Quality of Service (QoS) issues. Therefore, a more reliable and cross-family operable methods and systems to send and receive communications sessions between communications nodes using both protocols over Internet provided by third-party ISPs are needed. Furthermore, a method and system to recognize and correctly interpret communications sessions sent and received over third-party Internet connections from a device hidden by a third party ISP-provided NAT implementation are also needed.